]> dgit.raspbian.org Git - gnome-shell.git/commitdiff
calendar: Sync pointer after a message is removed
authorFlorian Müllner <fmuellner@gnome.org>
Wed, 11 Mar 2015 17:26:55 +0000 (18:26 +0100)
committerFlorian Müllner <fmuellner@gnome.org>
Wed, 11 Mar 2015 20:15:53 +0000 (21:15 +0100)
If a different message ends up underneath the pointer at the end
of the removal animation, it won't receive an enter event until
the pointer is moved, and thus its hover state will not be correct.
Fix it up manually with an explicit pointer sync.

https://bugzilla.gnome.org/show_bug.cgi?id=746019

js/ui/calendar.js

index 67b757db2f08aae1a89dacdafa0fc3ec50e1acbd..e8567201100625702fa80bfdb65cc2547580423a 100644 (file)
@@ -1360,15 +1360,18 @@ const MessageListSection = new Lang.Class({
 
         this._messages.delete(message);
 
-        if (animate)
+        if (animate) {
             Tweener.addTween(obj.container, { scale_x: 0, scale_y: 0,
                                               time: MESSAGE_ANIMATION_TIME,
                                               transition: 'easeOutQuad',
                                               onComplete: function() {
                                                   obj.container.destroy();
+                                                  global.sync_pointer();
                                               }});
-        else
+        } else {
             obj.container.destroy();
+            global.sync_pointer();
+        }
     },
 
     clear: function() {